package com;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class CharMain {

    /**
     * 是否是中文
     *
     * @param c 字符
     * @return 是中文？ true : false
     */

    public static boolean isChinese(char c) {
        Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
        return ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS || ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS || ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A || ub == Character.UnicodeBlock.GENERAL_PUNCTUATION || ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION || ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS;
    }

    /**
     * 是否是英文
     *
     * @param charaString 是英文
     * @return 是英文？ true : false
     */
    public static boolean isEnglish(String charaString) {
        return charaString.matches("^[a-zA-Z]*");
    }

    public static boolean isChinese(String str) {
        String regEx = "[\\u4e00-\\u9fa5]+";
        Pattern p = Pattern.compile(regEx);
        Matcher m = p.matcher(str);
        return m.find();
    }

    public static void main(String[] args) {
        System.out.println("员 是中文：" + isChinese("员"));
        System.out.println("s 是中文：" + isChinese('s'));
        System.out.println("程序员论坛 是中文：" + isChinese("程序员论坛"));
        System.out.println("程序员之家 是英文：" + isEnglish("程序员之家"));
        System.out.println("robert 是英文：" + isEnglish("robert"));
        System.out.println("t 是英文：" + isEnglish("t"));

        System.out.println("\n\n\n ----------------------------------------");

        System.out.println("！ 是中文：" + isChinese('！'));
        System.out.println("程序员之家 是英文：" + isEnglish("程序员之家"));
    }
}
